<HTML><HEAD><TITLE>portable_object_code(++Object)</TITLE>
</HEAD><BODY>[ <A HREF="index.html">library(asm)</A> | <A HREF="../../index.html">Reference Manual</A> | <A HREF="../../fullindex.html">Alphabetic Index</A> ]
<H1>portable_object_code(++Object)</H1>
Check whether abstract machine code is 32/64 bit portable
<DL>
<DT><EM>Object</EM></DT>
<DD>A list of object words, as produced by pasm/4.
</DD>
</DL>
<H2>Description</H2>
   This check can be run on the output of pasm/4.
   <P>
   ECLiPSe runtime engines on 32/64 bit hardware use different abstract
   machine instructions when processing integers that are between 32 and
   64 bits in size.  Code (and .eco files) that contain such instructions
   cannot be used on a runtime with different word-size from where it was
   assembled.  This predicate prints warnings and fails if the given code
   contains such constructs.

<H3>Modes and Determinism</H3><UL>
<LI>portable_object_code(++) is semidet
</UL>
<H3>Fail Conditions</H3>
If Object is not portable between 32/64 bit.
<H2>See Also</H2>
<A HREF="../../lib/asm/pasm-4.html">pasm / 4</A>
</BODY></HTML>
